package com.reggie.service;

import com.reggie.dto.EmployeeDTO;
import com.reggie.dto.EmployeeLoginDTO;
import com.reggie.dto.EmployeePageQueryDTO;
import com.reggie.dto.PasswordEditDTO;
import com.reggie.entity.Employee;
import com.reggie.result.PageResult;

public interface EmployeeService {
    //员工登录功能
    Employee login(EmployeeLoginDTO employeeLoginDTO);

    //添加员工
    void save(EmployeeDTO employeeDTO);

    /**
     * 分页查询
     * @param employeePageQueryDTO
     * @return
     */
    PageResult page(EmployeePageQueryDTO employeePageQueryDTO);

    /**
     * 根据id查询数据
     * @param id
     * @return
     */
    Employee findById(Long id);

    /**
     * 修改员工信息
     * @param employeeDTO
     */
    void update(EmployeeDTO employeeDTO);

    /**
     * 员工启用和禁用
     * @param status
     * @param id
     */
    void starOrStop(Integer status, Long id);

    /**
     * 修改密码
     * @param passwordEditDTO
     */
    void upPassword(PasswordEditDTO passwordEditDTO);
}
